#ifndef JS_MAP_H
#define JS_MAP_H
#include <stdint.h>
#include <stdio.h>

struct js_hashentry;
struct js_hashmap_t;
typedef uint64_t jshashval_t;
typedef struct js_hashmap_t js_hashmap_t;
typedef struct js_hashentry js_hashentry_t;

extern js_hashmap_t *js_hashmap_new(size_t prime);
extern void js_hashmap_set(js_hashmap_t *map, const char *key, void *value);
extern void *js_hashmap_get(js_hashmap_t *map, const char *key);
extern void js_hashmap_delete(js_hashmap_t *map);
extern int js_hashmap_size(js_hashmap_t *map);

#endif /* end of include guard: JS_MAP_H */
